home *** CD-ROM | disk | FTP | other *** search
/ Kentucky Virtual Art Museum / Kentucky Virtual Art Museum.iso / site / museums / quilts / viewer.swf / scripts / frame_19 / DoAction.as
Text File  |  2004-09-04  |  36KB  |  1,251 lines

  1. function doTween(mcId, frames, property, target, propertyB, targetB)
  2. {
  3.    mcId.t = 0;
  4.    mcId.b = mcId[property];
  5.    mcId.c = target - mcId.b;
  6.    mcId.d = frames;
  7.    mcId.bB = mcId[propertyB];
  8.    mcId.cB = targetB - mcId.bB;
  9.    mcId.onEnterFrame = function()
  10.    {
  11.       if(mcId.t < mcId.d)
  12.       {
  13.          mcId[property] = easeOutQuint(mcId.t,mcId.b,mcId.c,mcId.d);
  14.          mcId[propertyB] = easeOutQuint(mcId.t,mcId.bB,mcId.cB,mcId.d);
  15.          mcId.t = mcId.t + 1;
  16.       }
  17.       else
  18.       {
  19.          mcId.onEnterFrame = undefined;
  20.       }
  21.    };
  22. }
  23. function init()
  24. {
  25.    trace("init");
  26.    _global.gmcMain = this;
  27.    gNextLevel = 1;
  28.    THUMB_WIDTH = 47;
  29.    IMG_NAV_LEVEL = 9999;
  30.    THUMBMAXDIM = 60;
  31.    TEXTLINEHEIGHT = 20;
  32.    gXMLRoot = gImageData_xml.firstChild;
  33.    gImageCount = Number(gXMLRoot.childNodes.length);
  34.    trace("gImageCount: " + gImageCount);
  35.    _global.gImageMaxDim = int(gXMLRoot.attributes.maxImageDimension);
  36.    frameColor = gXMLRoot.attributes.frameColor;
  37.    imageBorderWidth = gXMLRoot.attributes.frameWidth;
  38.    captionColor = gXMLRoot.attributes.textColor;
  39.    bgColor = gXMLRoot.attributes.bgColor;
  40.    stageGutter = Number(gXMLRoot.attributes.stagePadding);
  41.    navPosition = gXMLRoot.attributes.navPosition;
  42.    thumbRowCount = gXMLRoot.attributes.thumbnailRows;
  43.    thumbColumnCount = gXMLRoot.attributes.thumbnailColumns;
  44.    gNavDir = gXMLRoot.attributes.navDirection;
  45.    thumbnailDisplayCount = thumbRowCount * thumbColumnCount;
  46.    gThumbPageCount = Math.ceil(gImageCount / thumbnailDisplayCount) - 1;
  47.    gImagePath = gXMLRoot.attributes.imagePath;
  48.    gThumbPath = gXMLRoot.attributes.thumbPath;
  49.    trace("---------------------");
  50.    trace("gImagePath: " + gImagePath);
  51.    if(gImagePath == undefined || gImagePath == "")
  52.    {
  53.       gImagePath = "images/";
  54.    }
  55.    if(gThumbPath == undefined || gThumbPath == "")
  56.    {
  57.       gThumbPath = "thumbs/";
  58.    }
  59.    trace("gImagePath: " + gImagePath);
  60.    if(isNaN(stageGutter))
  61.    {
  62.       stageGutter = 40;
  63.    }
  64.    if(isNaN(imageBorderWidth))
  65.    {
  66.       imageBorderWidth = 10;
  67.    }
  68.    thumbLoader = new com.qlod.LoaderClass();
  69.    imageLoader = new com.qlod.LoaderClass();
  70.    gaImages = new Array();
  71.    gaThumbs = new Array();
  72.    gmcThumbArea = gmcMain.createEmptyMovieClip("mcThumbArea",gNextLevel++);
  73.    gmcThumbSlider = gmcThumbArea.createEmptyMovieClip("mcThumbSlider",gNextLevel++);
  74.    gmcThumbSliderMask = gmcThumbArea.createEmptyMovieClip("mcThumbSliderMask",gNextLevel++);
  75.    gmcThumbSliderMask.attachMovie("sDummy","mcMask",gNextLevel++);
  76.    gmcThumbSlider.setMask(gmcThumbSliderMask);
  77.    gmcSelected = gmcThumbSlider.attachMovie("sSelected","mcSelected",gNextLevel++);
  78.    if(gNavDir == "LTR")
  79.    {
  80.       gmcNextThumbsBtn = gmcThumbArea.attachMovie("sBackThumbsBtn","mcNextThumbsBtn",gNextLevel++);
  81.       gmcBackThumbsBtn = gmcThumbArea.attachMovie("sNextThumbsBtn","mcBackThumbsBtn",gNextLevel++);
  82.    }
  83.    else
  84.    {
  85.       gmcNextThumbsBtn = gmcThumbArea.attachMovie("sNextThumbsBtn","mcNextThumbsBtn",gNextLevel++);
  86.       gmcBackThumbsBtn = gmcThumbArea.attachMovie("sBackThumbsBtn","mcBackThumbsBtn",gNextLevel++);
  87.    }
  88.    gThumbPageId = 0;
  89.    gmcNextThumbsBtn.onRelease = function()
  90.    {
  91.       gThumbPageId--;
  92.       updateThumbs();
  93.    };
  94.    gmcBackThumbsBtn.onRelease = function()
  95.    {
  96.       gThumbPageId++;
  97.       updateThumbs();
  98.    };
  99.    updateThumbs();
  100.    gCurrentImageId = 0;
  101.    gmcDisplayArea = gmcMain.attachMovie("sDummy","mcDisplayArea",gNextLevel++);
  102.    gmcDisplayArea._alpha = 0;
  103.    gmcImageButtons = gmcDisplayArea.attachMovie("sImageButtons","mcImageButtons",1);
  104.    if(gNavDir == "LTR")
  105.    {
  106.       gmcImageButtons.mcBack._x = 60;
  107.       gmcImageButtons.mcNext._x = 0;
  108.       gmcImgNextIcon = gmcMain.attachMovie("sImgBack","mcImgNext",IMG_NAV_LEVEL);
  109.       gmcImgBackIcon = gmcMain.attachMovie("sImgNext","mcImgBack",IMG_NAV_LEVEL + 1);
  110.    }
  111.    else
  112.    {
  113.       gmcImgNextIcon = gmcMain.attachMovie("sImgNext","mcImgNext",IMG_NAV_LEVEL);
  114.       gmcImgBackIcon = gmcMain.attachMovie("sImgBack","mcImgBack",IMG_NAV_LEVEL + 1);
  115.    }
  116.    gmcImgNextIcon._visible = false;
  117.    gmcImgBackIcon._visible = false;
  118.    gmcImageButtons.mcBack.useHandCursor = false;
  119.    gmcImageButtons.mcNext.useHandCursor = false;
  120.    gShownFirstImage = false;
  121.    gmcImageButtons.mcBack.onRollOver = function()
  122.    {
  123.       if(gShownFirstImage)
  124.       {
  125.          if(gCurrentImageId < gImageCount - 1)
  126.          {
  127.             gmcImgBackIcon._visible = true;
  128.             gmcImgBackIcon.mcArrow.gotoAndPlay(1);
  129.          }
  130.       }
  131.    };
  132.    gmcImageButtons.mcNext.onRollOver = function()
  133.    {
  134.       if(gShownFirstImage)
  135.       {
  136.          if(gCurrentImageId > 0)
  137.          {
  138.             gmcImageButtons.mcNext.useHandCursor = true;
  139.             gmcImgNextIcon._visible = true;
  140.             gmcImgNextIcon.mcArrow.gotoAndPlay(1);
  141.          }
  142.          else
  143.          {
  144.             gmcImageButtons.mcNext.useHandCursor = false;
  145.          }
  146.       }
  147.    };
  148.    gmcImageButtons.mcBack.onRollOut = function()
  149.    {
  150.       gmcImgBackIcon._visible = false;
  151.    };
  152.    gmcImageButtons.mcNext.onRollOut = function()
  153.    {
  154.       gmcImgNextIcon._visible = false;
  155.    };
  156.    gmcImageButtons.mcNext.onRelease = function()
  157.    {
  158.       nextId = gCurrentImageId - 1;
  159.       if(nextId >= 0)
  160.       {
  161.          gaThumbs[nextId].onRelease();
  162.       }
  163.    };
  164.    gmcImageButtons.mcBack.onRelease = function()
  165.    {
  166.       nextId = gCurrentImageId + 1;
  167.       if(nextId <= gImageCount)
  168.       {
  169.          gaThumbs[nextId].onRelease();
  170.       }
  171.    };
  172.    gmcTitle = gmcMain.attachMovie("sCaption","mcTitle",gNextLevel++);
  173.    gmcCaption = gmcMain.attachMovie("sCaption","mcCaption",gNextLevel++);
  174.    gmcLogo = gmcMain.attachMovie("sLogo","mcLogo",gNextLevel++);
  175.    gmcTitle.txtCap.htmlText = gXMLRoot.attributes.title;
  176.    gmcTitle.txtCap.textColor = captionColor;
  177.    gmcCaption.txtCap.textColor = captionColor;
  178.    colLogo = new Color(gmcLogo);
  179.    colLogo.setRGB(captionColor);
  180.    gmcImageLoadBar = gmcMain.attachMovie("sImageLoadBar","mcImageLoadBar",999999);
  181.    gmcImageLoadBar._visible = false;
  182.    barCol = new Color(gmcImageLoadBar);
  183.    barCol.setRGB(frameColor);
  184.    selCol = new Color(gmcSelected);
  185.    selCol.setRGB(frameColor);
  186.    nCol = new Color(gmcNextThumbsBtn);
  187.    nCol.setRGB(frameColor);
  188.    bCol = new Color(gmcBackThumbsBtn);
  189.    bCol.setRGB(frameColor);
  190.    inCol = new Color(gmcImgNextIcon);
  191.    inCol.setRGB(frameColor);
  192.    ibCol = new Color(gmcImgBackIcon);
  193.    ibCol.setRGB(frameColor);
  194.    gThumbAreaWidth = THUMBMAXDIM * thumbColumnCount;
  195.    gThumbAreaHeight = THUMBMAXDIM * thumbRowCount;
  196.    if(gThumbPageCount > 0)
  197.    {
  198.       gThumbAreaHeight += THUMBMAXDIM;
  199.    }
  200.    var _loc1_ = Math.max(gThumbAreaWidth,170);
  201.    gmcTitle.txtCap._width = _loc1_;
  202.    gmcCaption.txtCap._width = _loc1_;
  203.    gTitleHeight = gmcTitle.txtCap.textHeight;
  204.    gmcThumbSliderMask.mcMask._width = gThumbAreaWidth;
  205.    gmcThumbSliderMask.mcMask._height = gThumbAreaHeight;
  206.    gmcThumbSliderMask._y = 0;
  207.    gmcThumbSliderMask._x = - gThumbAreaWidth;
  208.    if(gNavDir == "LTR")
  209.    {
  210.       gmcBackThumbsBtn._x = - THUMBMAXDIM;
  211.       gmcNextThumbsBtn._x = - gThumbAreaWidth;
  212.       if(thumbColumnCount == 1)
  213.       {
  214.          gmcBackThumbsBtn._x += THUMBMAXDIM / 2;
  215.          gmcNextThumbsBtn._x -= THUMBMAXDIM / 2;
  216.       }
  217.    }
  218.    else
  219.    {
  220.       gmcNextThumbsBtn._x = - THUMBMAXDIM;
  221.       gmcBackThumbsBtn._x = - gThumbAreaWidth;
  222.       if(thumbColumnCount == 1)
  223.       {
  224.          gmcBackThumbsBtn._x -= THUMBMAXDIM / 2;
  225.          gmcNextThumbsBtn._x += THUMBMAXDIM / 2;
  226.       }
  227.    }
  228.    gmcNextThumbsBtn._y = gmcBackThumbsBtn._y = gThumbAreaHeight - THUMBMAXDIM;
  229.    doLayout();
  230.    gmcThumbSlider._x = - gThumbAreaWidth;
  231.    initThumbs();
  232.    gmcSelected._visible = false;
  233.    intStart = setInterval(autoShow,300);
  234.    keyListener = new Object();
  235.    keyListener.onKeyDown = function()
  236.    {
  237.       if(okPress)
  238.       {
  239.          if(Key.isDown(37))
  240.          {
  241.             if(gNavDir == "LTR")
  242.             {
  243.                gmcImageButtons.mcNext.onRelease();
  244.             }
  245.             else
  246.